package cn.wolfcode.crm.query;

import cn.wolfcode.crm.util.DateUtil;
import lombok.Getter;
import lombok.Setter;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.ArrayList;
import java.util.Date;
import java.util.Iterator;
import java.util.List;

/**
 * 车辆信息高级查询
 */
@Getter
@Setter
public class CaseInfoQuery extends QueryObject {
    private List<Integer> status = new ArrayList<>();//验证完提审状态
    private String keyword;    // 关键字，查询

    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date minCaseTime;   // 案件时间，最小值
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date maxCaseTime;   // 案件时间，最大值
    // 把时间设置到 当天最后一秒
    public Date getMaxCaseTime() {
        return DateUtil.getEndDate(maxCaseTime);
    }

    public String getKeyword() {
        return empty2Null(keyword);
    }

    public List<Integer> getStatus() {
        if (status == null) {
            return null;
        }
        Iterator<Integer> iter = status.iterator();
        while (iter.hasNext()) {
            Integer num = iter.next();
            if (num == null) {
                iter.remove();
            }
        }
        return status;
    }
}
